Die Rolle von Features und Aspekten in der Softwareentwicklung (The Role of Features and Aspects in Software Development)

نویسنده

  • Sven Apel
چکیده

Zusammenfassung Feature-orientierte Programmierung (FOP) und Aspekt-orientierte Programmierung (AOP) sind komplementäre Technologien. Obwohl beide auf die Modularität von so genannten querschneidenden Belangen abzielen, so tun sie dies auf unterschiedliche Art und Weise. Im Rahmen der Arbeit wurde beobachtet, dass FOP und AOP kombiniert werden können, um ihre individuellen Schwächen zu überwinden. Die Arbeit schlägt mit Aspekt-basierten Featuremodulen und Aspektverfeinerung zwei Techniken zur Symbiose von FOP und AOP vor. Beide Techniken werden in einer Fallstudie evaluiert und entsprechende Programmierrichtlinien zum Einsatz von FOP und AOP werden abgeleitet. Schlussendlich wird mittels der Analyse von acht AspectJ-Programmen unterschiedlicher Größe die Frage beantwortet, wie Implementierungsmechanismen der FOP und der AOP heutzutage Verwendung finden. Summary Feature-Oriented Programming (FOP) and Aspect-Oriented Programming (AOP) are complementary technologies. Though they aim at crosscutting modularity, they do so in different ways. We observed that FOP and AOP can be combined to overcome their individual limitations. Consequently, we propose with Aspectual Feature Modules (AFMs) and Aspect Refinement (AR) two techniques to unify FOP and AOP. We use AFMs and AR in a non-trivial case study to create a product line of overlay networks. We also present a set of guidelines to assist programmers in using FOP and AOP techniques for implementing product lines in a stepwise and generative manner. Finally, we answer the question of how FOP and AOP-related implementation techniques are used today by analyzing a representative set of eight AspectJ programs of different sizes.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The Rational Unified Process

Professionelle Softwareentwicklung ist heute ohne den Einsatz eines Vorgehensmodells nicht mehr vorstellbar. Die Firma Rational Software hat mit dem Rational Unified Process (RUP) [KRU98] ein Prozessmodell entwickelt, das zahlreiche Entwicklungstätigkeiten, Ergebnisse und Abhängigkeiten der Softwareentwicklung im Detail beschreibt. Der RUP wird von Rational Software als Produkt vertrieben und w...

متن کامل

Optimierung der Softwareentwicklung in einem Industrieunternehmen am Beispiel Siemens

Mit mehr als 30.000 Software-Entwicklern und des starken Einfluss von Software auf den Geschäftserfolg 60% des Geschäftes – spielt Siemens in der Champions League der Software-Companies. Da ist natürlich eine möglichst optimale Softwareentwicklung von großer Bedeutung. Die wichtigsten Hebel um dies zu erreichen sind: Angemessene Prozesse, die richtige Struktur und die Nutzung von Synergien. Das...

متن کامل

Grundlagen sicherheitsgerichteter Software-Entwicklung

Um die Entwicklung eines sicheren Produktes erfolgreich abzuschließen sind neben technischen Aspekten und Anforderungen an die Software immer auch die Vorgehensweise und die Dokumentation der Entwicklungstätigkeiten für eine Zertifizierung bzw. Zulassung sehr wichtig. Dazu gehören die systematische Dokumentation von Anforderungen, eine systematische Implementierung und umfangreiche qualitätssic...

متن کامل

Wiederverwendung von Transformationen

Wiederverwendung ist in der Softwareentwicklung ein großes Thema. Auch für die Entwicklung von Generatoren für die modellgetriebene Softwareentwicklung und den Einsatz von Modelltransformationen wäre eine einfache Wiederverwendung wünschenswert. In diesem Text wird ein Ansatz zur Einordnung von Wiederverwendbarkeit innerhalb von Modelltransformationen vorgestellt. Zusätzlich werden einige Aspek...

متن کامل

Qualitätsbasierte Bewertung Agiler Entwicklungsmethoden mit dem AMMI

[email protected] Zusammenfassung Qualitätssicherung nimmt in der Agilen SoftwareEntwicklung auf den ersten Blick keine große Rolle ein. Dennoch ist Qualität ein grundlegendes Prinzip von Agilen Entwicklungsmethoden, das implizit von vielen Agilen Praktiken umgesetzt wird. Dieser Beitrag stellt die Grundlagen Agiler Software-Entwicklung dar und gibt einen Überblick über zentrale Agile Praktik...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • it - Information Technology

دوره 50  شماره 

صفحات  -

تاریخ انتشار 2008